home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Internet Info 1994 March
/
Internet Info CD-ROM (Walnut Creek) (March 1994).iso
/
inet
/
internet-drafts
/
draft-ietf-pppext-for-bridging-00.txt
< prev
next >
Wrap
Text File
|
1993-07-08
|
43KB
|
1,119 lines
INTERNET-DRAFT F. Baker, ACC
Network Working Group R. Bowen, IBM
Editors
July, 1993
Point-to-Point Protocol Extensions for Bridging
STATUS OF THIS MEMO
This document is an Internet-Draft. Internet-Drafts are
working documents of the Internet Engineering Task Force
(IETF), its Areas, and its Working Groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six
months. Internet-Drafts may be updated, replaced, or obsoleted
by other documents at any time. It is not appropriate to use
Internet-Drafts as reference material or to cite them other
than as a ``working draft'' or ``work in progress.''
To learn the current status of any Internet-Draft, please check
the 1id-abstracts.txt listing contained in the Internet-Drafts
Shadow Directories on ds.internic.net, nic.nordu.net,
ftp.nisc.sri.com, or munnari.oz.au.
This document will expire no later than January 15, 1994.
1. Abstract
This document defines an extension of the Internet Point-to-Point
Protocol (PPP) described in RFC 1331, targeting the use of Point-to-
Point lines for Remote Bridging. It is intended as an update to
replace RFC 1220. This draft is a product of the Point-to-Point
Protocol Extensions Working Group of the Internet Engineering
Task Force (IETF).
This Internet-Draft specifies an IAB standards track protocol for the
Internet community, and requests discussion and suggestions for
improvements. Please refer to the current edition of the "IAB
Official Protocol Standards" for the standardization state and
status of this protocol. Distribution of this memo is unlimited.
2. Historical Perspective
Two basic algorithms are ambient in the industry for Bridging of
Point-to-Point Protocol Extensions Working Group [Page 1]
Internet-Draft Bridging Point-to-Point Protocol July 1993
Local Area Networks. The more common algorithm is called
"Transparent Bridging" and has been standardized for Extended LAN
configurations by IEEE 802.1. The other is called "Source Route
Bridging" and is prevalent on IEEE 802.5 Token Ring LANs. The IEEE
has combined these two methods into a device called a Source Routing
Transparent (SRT) bridge, which concurrently provides both Source
Route and Transparent bridging. Transparent and SRT bridges are
specified in IEEE standard 802.1D.
Although there is a subcommittee of IEEE 802.1 addressing remote
bridging, neither standard directly defines Remote Bridging per se,
as that would technically be beyond the IEEE 802 committee's charter.
Both allow for it, however, modeling the line as an unspecified
interface between remote bridges.
This document assumes that the devices at either end of a serial link
- have agreed to utilize the RFC 1331 line discipline in some
form.
- may have agreed, by some other means, to exchange other
protocols on the line interspersed with each other and with any
bridged PDUs.
- may be willing to use the link as a vehicle for Remote Bridging.
- may have multiple point-to-point links that are configured in
parallel to simulate a single line of higher speed or
reliability, but message sequence issues are solved by the
transmitting end.
3. General Considerations
3.1. Link Quality Monitoring
It is strongly recommended that Point-to-Point Bridge Protocol
implementations utilize Magic Number Loopback Detection and Link-
Quality-Monitoring. This is because the 802.1 Spanning Tree
protocol, which is integral to both Transparent Bridging and Source
Routing (as standardized), is unidirectional during normal operation,
with HELLO PDUs emanating from the Root System in the general
direction of the leaves, without any reverse traffic except in
response to network events.
3.2. Message Sequence
The multiple link case requires consideration of message
sequentiality. The transmitting station must determine either that
the protocol being bridged requires transmissions to arrive in the
order of their original transmission, and enqueue all transmissions
on a given conversation onto the same link to force order
Point-to-Point Protocol Extensions Working Group [Page 2]
Internet-Draft Bridging Point-to-Point Protocol July 1993
preservation, or that the protocol does NOT require transmissions to
arrive in the order of their original transmission, and use that
knowledge to optimize the utilization of the several links, enqueuing
traffic to links to minimize delay.
In the absence of such a determination, the transmitting station must
act as though all protocols require order preservation; many
protocols designed primarily for use on a single LAN in fact do. A
protocol could be described to maintain message sequentiality across
multiple links, either by sequence numbering or by fragmentation and
re-assembly, but this is neither elegant nor absolutely necessary.
3.3. Maximum Receive Unit Considerations
Please note that the negotiated MRU must be large enough to support
the MAC Types that are negotiated for support, there being no
fragmentation and re-assembly. Even Ethernet frames are larger than
the default MRU of 1500 octets.
3.4. Separation of Spanning Tree Domains
It is conceivable that a network manager might wish to inhibit the
exchange of BPDUs on a link in order to logically divide two regions
into separate Spanning Trees with different Roots (and potentially
different Spanning Tree implementations or algorithms). In order to
do that, he should configure both ends to not exchange BPDUs on a
link. For the sake of robustness, a bridge which is so configured
must silently discard the BPDU of its neighbor, should it receive
one.
4. IEEE 802.1 Bridging
4.1. Overview of IEEE 802.1 Transparent Bridging
As a favor to the uninitiated, let us first describe Transparent
Bridging. Essentially, the bridges in a network operate as isolated
entities, largely unaware of each others' presence. A Transparent
Bridge maintains a Forwarding Database consisting of
{address, interface}
records by saving the Source Address of each LAN transmission that it
receives along with the interface identifier for the interface it was
received on. It goes on to check whether the Destination Address is
in the database, and if so, either discards the message (if the
destination and source are located at the same interface) or forwards
the message to the indicated interface. A message whose Destination
Address is not found in the table is forwarded to all interfaces
except the one it was received on; this describes Broadcast/Multicast
behavior as well.
Point-to-Point Protocol Extensions Working Group [Page 3]
Internet-Draft Bridging Point-to-Point Protocol July 1993
The obvious fly in the ointment is that redundant paths in the
network cause indeterminate (nay, all too determinate) forwarding
behavior to occur. To prevent this, a protocol called the IEEE
802.1D Spanning Tree Protocol is executed between the bridges to
detect and logically remove redundant paths from the network.
One system is elected as the "Root", which periodically emits a
message called a Bridge Protocol Data Unit, or BPDU, heard by
all of its neighboring bridges. Each of these modifies and passes
the BPDU on to its neighbors, and they to theirs, until it arrives at
the leaf LAN segments in the network (where it dies, having no
further neighbors to pass it along) or until the message is stopped
by a bridge which has a superior path to the "Root". In this latter
case, the interface the BPDU was received on is ignored (i.e., it is
placed in a Hot Standby status, no traffic is emitted onto it except
the BPDU, and all traffic received from it is discarded) until a
topology change forces a recalculation of the network.
4.2. IEEE 802.1 Remote Transparent Bridging Activity
There exist two basic sorts of bridges - ones that interconnect LANs
directly, called Local Bridges, and ones that interconnect LANs via
an intermediate medium such as a leased line, called Remote Bridges.
The Point-to-Point Protocol might be used by a Remote Bridge.
There is more than one proposal within the IEEE 802.1 Interworking
Committee for modeling the Remote Bridge. In one model, the
interconnecting serial link(s) are treated in the same way that a LAN
is, having a standard IEEE 802.1 Link State; in another, the serial
links operate in a mode quite different from the LANs that they
interconnect. For the sake of simplicity of specification, the first
model is adopted, although some of the good ideas from proponents of
the second model are included or allowed for.
Therefore, given that transparent bridging is configured on a line or
set of lines, the specifics of the link state with respect to the
bridge is defined by IEEE 802.1D. The Bridge Protocol Data Unit,
or BPDU, is defined there, as well as the algorithms for its use.
It is assumed that, if a Point-to-Point Link neighbor receives IEEE
802.1 BPDUs without rejecting them with the RFC 1331 Protocol-Reject
LCP PDU, Transparent Bridging is permitted on the link.
4.3. IEEE 802.1 Source Routing
The IEEE 802.1D Committee has standardized Source Routing for any MAC
Type that allows its use. Currently, MAC Types that support Source
Routing are FDDI and IEEE 802.5 Token Ring.
In this approach, the originating system has the responsibility of
indicating what path the message should follow. It does this,
Point-to-Point Protocol Extensions Working Group [Page 4]
Internet-Draft Bridging Point-to-Point Protocol July 1993
if the message is directed off the local ring, by including a
variable length MAC header extension called the Routing Information
Field, or RIF. The RIF consists of one 16 bit word of flags and
parameters followed by zero or more ring-and-bridge identifiers.
Each bridge en route determines from this "source route list"
whether it should receive the message and how to forward it.
The algorithm for Source Routing requires the bridge to be able to
identify any interface by its ring-and-bridge identifier, and to be
able to identify any of its OTHER interfaces likewise. When a packet
is received which has the Routing Information Field (RIF) present, a
boolean in the RIF is inspected to determine whether the ring-and-
bridge identifiers are to be inspected in "forward" or "reverse"
sense. In a "forward" search, the bridge looks for the ring-and-
bridge identifier of the interface the packet was received on, and
forwards the packet toward the ring identified in the ring-and-bridge
identifier that follows it. In a "reverse" search, the bridge looks
for the ring-and-bridge identifier of the OTHER INTERFACE, and
delivers the packet to the indicated interface if such is found.
4.4. IEEE 802.1 Remote Source Route Bridging Activity
There is no Remote Source Route Bridge proposal in IEEE 802.1 at this
time, although IBM ships a remote Source Routing Bridge. Simplicity
would dictate that we choose the same model for remote Source Routing
that was selected for IEEE 802.1, but necessity requires a ring
number for the line in some cases. We allow for both models.
Given that source routing is configured on a line or set of lines,
the specifics of the link state with respect to the bridge is defined
by the IEEE 802.1 Appendix on Source Routing. The requisite PDUs for
calculating the spanning tree (used for assuring that each ring will
receive at most one copy of a multicast) are defined there, as well
as the algorithms for their use. MAC PDUs (Beacon, Ring Management,
etc) are specific to the MAU technology and are not exchanged on the
line.
4.5. Source Routing to Transparent Bridge Translation
IEEE 802 is not currently addressing bridges that translate between
Transparent Bridging and Source Routing. For the purposes of this
standard, such a device is either a Transparent or a Source Routing
bridge, and will act on the line in one of these two ways, just as
it does on the LAN.
5. Traffic Services
Several services are provided for the benefit of different system
types and user configurations. These include LAN Frame Checksum
Preservation, LAN Frame Checksum Generation, Tinygram Compression,
and the identification of closed sets of LANs.
Point-to-Point Protocol Extensions Working Group [Page 5]
Internet-Draft Bridging Point-to-Point Protocol July 1993
5.1. LAN Frame Checksum Preservation
IEEE 802.1 stipulates that the Extended LAN must enjoy the same
probability of undetected error that an individual LAN enjoys.
Although there has been considerable debate concerning the algorithm,
no other algorithm has been proposed than having the LAN Frame
Checksum received by the ultimate receiver be the same value
calculated by the original transmitter. Achieving this requires, of
course, that the line protocols preserve the LAN Frame Checksum from
end to end. The protocol is optimized towards this approach.
5.2. Traffic having no LAN Frame Checksum
The fact that the protocol is optimized towards LAN Frame Checksum
preservation raises twin questions: "What is the approach to be used
by systems which, for whatever reason, cannot easily support Frame
Checksum preservation?" and "What is the approach to be used when the
system originates a message, which therefore has no Frame Checksum
precalculated?".
Surely, one approach would be to require stations to calculate the
Frame Checksum in software if hardware support were unavailable; this
would meet with profound dismay, and would raise serious questions of
interpretation in a Bridge/Router.
However, stations which implement LAN Frame Checksum preservation
must already solve this problem, as they do originate traffic.
Therefore, the solution adopted is that messages which have no Frame
Checksum are tagged and carried across the line.
When a system which does not implement LAN Frame Checksum
preservation receives a frame having an embedded FCS, it converts it
for its own use by removing the trailing four octets. When any
system forwards a frame which contains no embedded FCS to a LAN, it
forwards it in a way which causes the FCS to be calculated.
5.3. Tinygram Compression
An issue in remote Ethernet bridging is that the protocols that are
most attractive to bridge are prone to problems on low speed (64 KBPS
and below) lines. This can be partially alleviated by observing that
the vendors defining these protocols often fill the PDU with octets
of ZERO. Thus, an Ethernet or IEEE 802.3 PDU received from a line
that is (1) smaller than the minimum PDU size, and (2) has a LAN
Frame Checksum present, must be padded by inserting zeroes between
the last four octets and the rest of the PDU before transmitting it
on a LAN. These protocols are frequently used for interactive
sessions, and therefore are frequently this small.
To prevent ambiguity, PDUs requiring padding are explicitly tagged.
Compression is at the option of the transmitting station, and is
Point-to-Point Protocol Extensions Working Group [Page 6]
Internet-Draft Bridging Point-to-Point Protocol July 1993
probably performed only on low speed lines, perhaps under
configuration control.
The pseudo-code in Figure 1 describes the algorithms.
5.4. LAN Identification
In some applications, it is useful to tag traffic by the user
community it is a part of, and guarantee that it will be only emitted
onto a LAN which is of the same community. The user community is
defined by a LAN ID. Systems which choose to not implement this
feature must assume that any frame received having a LAN ID is from a
different community than theirs, and discard it.
Point-to-Point Protocol Extensions Working Group [Page 7]
Internet-Draft Bridging Point-to-Point Protocol July 1993
Figure 1: Tinygram Compression Pseudo-Code
PPP Transmitter:
if (ZeroPadCompressionEnabled &&
BridgedProtocolHeaderFormat == IEEE8023 &&
PacketLength == Minimum8023PacketLength) {
/*
* Remove any continuous run of zero octets preceding,
* but not including, the LAN FCS, but not extending
* into the MAC header.
*/
Set (ZeroCompressionFlag); /* Signal receiver */
if (is_Set (LAN_FCS_Present)) {
FCS = TrailingOctets (PDU, 4); /* Store FCS */
RemoveTrailingOctets (PDU, 4); /* Remove FCS */
while (PacketLength > 14 && /* Stop at MAC header */
TrailingOctet (PDU) == 0) /* or last non-zero octet */
RemoveTrailingOctets (PDU, 1);/* Remove zero octet */
Appendbuf (PDU, 4, FCS); /* Restore FCS */
}
else {
while (PacketLength > 14 && /* Stop at MAC header */
TrailingOctet (PDU) == 0) /* or last zero octet */
RemoveTrailingOctets (PDU, 1);/* Remove zero octet */
}
}
PPP Receiver:
if (ZeroCompressionFlag) { /* Flag set in header? */
/* Restoring packet to minimum 802.3 length */
Clear (ZeroCompressionFlag);
if (is_Set (LAN_FCS_Present)) {
FCS = TrailingOctets (PDU, 4); /* Store FCS */
RemoveTrailingOctets (PDU, 4); /* Remove FCS */
Appendbuf (PDU, 60 - PacketLength, zeroes);/* Add zeroes */
Appendbuf (PDU, 4, FCS); /* Restore FCS */
}
else {
Appendbuf (PDU, 60 - PacketLength, zeroes);/* Add zeroes */
}
}
Point-to-Point Protocol Extensions Working Group [Page 8]
Internet-Draft Bridging Point-to-Point Protocol July 1993
6. Protocol Data Unit Formats
6.1. Common LAN Traffic
Figure 2: 802.3 Frame format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0xFF | 0x03 | 0x00 | 0x31 +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|I|Z|0| Count | MAC Type | LAN ID high word (optional) +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LAN ID low word (optional) | Destination MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source MAC Address | Length/Type +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LLC data +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LAN FCS (optional) +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| potential line protocol pad +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| HDLC CRC | HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
For Bridging LAN traffic, the format of the frame on the line is as
shown in Figures 2 or 3. This conforms to RFC 1331 section 3.1
"Frame Format". It also allows for RFC 1331 negotiation of
Protocol Field Compression and Address and Control Field Compression.
It is recommended that devices which use controllers that require
even memory addresses negotiate to NOT USE Protocol Field Compression
on other than low speed links.
Point-to-Point Protocol Extensions Working Group [Page 9]
Internet-Draft Bridging Point-to-Point Protocol July 1993
Figure 3: 802.4/802.5/FDDI Frame format
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0xFF | 0x03 | 0x00 | 0x31 +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|F|I|Z|0| Count | MAC Type | LAN ID high word (optional) +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LAN ID low word (optional) | Pad Byte | Frame Control +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Destination MAC Address | Source MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Source MAC Address +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LLC data +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| FCS (optional) +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| optional Data Link Layer padding +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| HDLC CRC | HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The fields of this message are as follows:
Address Field and Control Field:
As defined by RFC 1331
Protocol Field:
0x0031
Flags:
bits 0-3: length of the line protocol pad field.
bit 4: Reserved, Set to Zero
bit 5: Set if IEEE 802.3 Pad must be zero filled to minimum size
bit 6: Set if the LAN ID Field is present
bit 7: Set if the LAN FCS Field is present
The "number of trailing "pad" octets is a deference to the fact
that any point-to-point frame may have padding at the end. This
number tells the receiving system how many octets to strip off the
end.
Point-to-Point Protocol Extensions Working Group [Page 10]
Internet-Draft Bridging Point-to-Point Protocol July 1993
MAC Type:
0x00: Reserved
0x01: IEEE 802.3/Ethernet (canonical addresses)
0x02: IEEE 802.4 (non-canonical addresses)
0x03: IEEE 802.5 (non-canonical addresses)
0x04: FDDI (non-canonical addresses)
0xXX: FDDI (canonical addresses) [to be assigned - 0x0C proposed]
other: Assigned by the Internet Assigned Numbers Authority
LAN ID:
This optional 32 bit field identifies the Community of LANs which
may be interested to receive this frame, as described in section
5.4. If the LAN ID flag is not set, then this field is not
present, and the PDU is four octets shorter.
Frame Control:
On 802.4, 802.5, and FDDI LANs, there are a few octets preceding
the Destination MAC Address, one of which is protected by the FCS.
Since the MAC Type field defines the bit ordering, these are sent
in MAC order. A pad octet is present to avoid odd machine address
boundary problems.
Destination MAC Address:
As defined by the IEEE. Since the MAC Type field defines the bit
ordering, this is sent in MAC order.
Source MAC Address:
As defined by the IEEE. Since the MAC Type field defines the bit
ordering, this is sent in MAC order.
LLC data:
This is the remainder of the MAC frame. This is that portion of
the frame which is (or would be were it present) protected by the
LAN FCS; for example, the 802.5 Access Control field, and Status
Trailer are not meaningful to transmit to another ring, and are
omitted.
LAN Frame Checksum:
If present, this is the LAN FCS which was calculated by (or which
appears to have been calculated by) the originating station. If
the FCS Present flag is not set, then this field is not present,
and the PDU is four octets shorter.
Optional Data Link Layer Padding
RFC 1331 specifies that an arbitrary pad can be added after the
data intended for transmission. The "Count" portion of the flag
field contains the length of this pad, which may not exceed 15
octets.
The PPP Extensions in RFC XXXX, "PPP LCP Extensions," specify a
self-describing pad. Implementations are encouraged to set the
Point-to-Point Protocol Extensions Working Group [Page 11]
Internet-Draft Bridging Point-to-Point Protocol July 1993
Count field to zero and use the self-describing pad instead.
CRC-CCITT
Mentioned primarily for clarity. The CRC used on the PPP link is
separate from and unrelated to the LAN FCS.
6.2. Spanning Tree Bridge PDU
This is the Spanning Tree BPDU, without any MAC or
802.2 LLC header (these being functionally equivalent to the Address,
Control, and Protocol Fields). The LAN Pad and Frame Checksum fields
are likewise superfluous and absent. The Address and Control Fields
are optional, subject to the Address and Control Field Compression
negotiation.
If a Point-to-Point Link neighbor receives a BPDU without rejecting
it with the RFC 1331 Protocol-Reject LCP PDU, then either the
specified spanning tree protocol is supported or spanning tree
support is disabled so as to separate two spanning tree domains.
Figure 4: Spanning Tree Bridge PDU
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+
| HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0xFF | 0x03 | Spanning Tree Protocol +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BPDU data +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... +
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| HDLC CRC | HDLC FLAG |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The fields of this message are as follows:
Address Field and Control Field:
As defined by RFC 1331
Protocol Field:
0x0201: IEEE 802.1D Spanning Tree
0x0203: IBM Source Route Bridge Spanning Tree
other: Assigned by the Internet Assigned Numbers Authority
MAC Frame:
BPDU, as defined by the specified Spanning Tree Protocol
Point-to-Point Protocol Extensions Working Group [Page 12]
Internet-Draft Bridging Point-to-Point Protocol July 1993
6.3. IEEE 802 Network Control Protocol
The Bridge Network Control Protocol is responsible for configuring,
enabling, and disabling the bridges on both ends of the point-to-
point link. As with the Link Control Protocol, this is accomplished
through an exchange of packets. BNCP packets may not be exchanged
until LCP has reached the network-layer Protocol Configuration
Negotiation phase. Likewise, LAN traffic may not be exchanged until
BNCP has first opened the connection.
The Bridge Network Control Protocol is exactly the same as the Point-
to-Point Link Control Protocol with the following exceptions:
Data Link Layer Protocol Field
Exactly one Bridge Network Control Protocol packet is encapsu-
lated in the Information field of PPP Data Link Layer frames
where the Protocol field indicates type hex 8031 (BNCP).
Code field
Only Codes 1 through 7 (Configure-Request, Configure-Ack,
Configure-Nak, Configure-Reject, Terminate-Request,
Terminate-Ack and Code-Reject) are used. Other Codes should
be treated as unrecognized and should result in Code-Rejects.
Timeouts
BNCP packets may not be exchanged until the Link Control
Protocol has reached the network-layer Protocol Configuration
Negotiation phase. An implementation should be prepared to wait
for Link Quality testing to finish before timing out waiting
for Configure-Ack or other response.
Configuration Option Types
The Bridge Network Control Protocol has a separate set of
Configuration Options. These permit the negotiation of the
following items:
- MAC Types supported
- Tinygram Compression support
- LAN Identification support
- Ring and Bridge Identification
6.4. Source Routing Remote Ring Identification Option
The Source Routing Remote Ring Identification Option is designed for
use when the line is an interface between half bridges connecting
virtual or physical rings.
Since the remote bridges are modeled as a single bridge with a
strange internal interface, each remote bridge needs to know the
ring/bridge numbers of the remote bridge it is adjacent to. This is
the subject of a Link Negotiation. The exchange of ring-and-bridge
Point-to-Point Protocol Extensions Working Group [Page 13]
Internet-Draft Bridging Point-to-Point Protocol July 1993
identifiers is done using this option on the Network Control
Protocol.
The two half bridges must agree on the bridge number. When the two
disagree, the larger of the two numbers should be used. To resolve
the conflict, the system with the higher bridge number should NAK the
option, suggesting its own bridge number for use.
The Token Ring Ring-and-Bridge Identifier, and its use, is specified
by the IEEE 802.1D Appendix on Source Routing. It identifies the
ring that the interface is attached to by its configured ring number,
and itself by bridge number on the ring.
Figure 5: Remote Ring Identification Option
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| type=1 |length = 4 | ring number |bridge#|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 1 = Source Routing Ring/Bridge Identifier
Length
4 Octets
Ring Number
A 12 bit number identifying the token ring, as defined in the
IEEE 802.1D Source Routing Specification.
Bridge Number
A 4 bit number identifying the bridge on the token ring, as
defined in the IEEE 802.1D Source Routing Specification.
For example, if System A announces
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AAA | 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
and System B announces
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BBB | 1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Point-to-Point Protocol Extensions Working Group [Page 14]
Internet-Draft Bridging Point-to-Point Protocol July 1993
then the resulting Source Routing Tuple (read in the appropriate
direction) is then
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| AAA | 1 | BBB |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+.
6.5. Source Routing Line Identification Option
The Source Routing Line Identification Option is designed for use
when the line is assigned a ring number as though it were a two
system token ring in accordance with the Source Routing algorithm.
The bridges exchange ring-and-bridge identifiers using this option
on the Network Control Protocol.
The Token Ring Ring-and-Bridge Identifier, and its use, is specified
by the IEEE 802.1D Appendix on Source Routing. It identifies the
ring that the interface is attached to by its configured ring number,
and itself by bridge number on the ring.
The two bridges must agree on the ring number. When the two
disagree, the larger of the two numbers should be used. To resolve
the conflict, the system with the higher ring number should NAK the
option, suggesting its own ring number for use.
Figure 6: Line Identification Option
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| type=2 |length = 4 | ring number |bridge#|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 2 = Source Routing Line "Ring/Bridge" Identifier
Length
4 Octets
Ring Number
A 12 bit number identifying the line, as defined in the
IEEE 802.1D Source Routing Specification.
Bridge Number
A 4 bit number identifying the bridge on the token ring, as
defined in the IEEE 802.1D Source Routing Specification.
6.6. MAC Type Support Selection
Note: During the Proposed Standard stage of RFC 1220, this option
was not widely implemented and implementations have not necessarily
Point-to-Point Protocol Extensions Working Group [Page 15]
Internet-Draft Bridging Point-to-Point Protocol July 1993
proven interoperable. Its use is therefore discouraged.
The MAC Type Selection Option is provided to permit nodes to
advertise what sort of traffic they are prepared to convey. A device
negotiating a 1600 octet MRU, for example, may not be willing to
support 802.5 (although it might, with certain changes necessary in
the RIFs it passes, and given that the hosts it supports implement
the 802.5 Maximum Frame Size correctly), and is definitely not
prepared to support 802.4 or FDDI.
A system which does not announce the MAC Types that it supports may
be assumed to support all MAC Types; it will discard those that it
does not understand. A system which chooses to announce MAC Types is
advising its neighbor that all unspecified MAC Types will be
discarded. Announcement of multiple MAC Types is accomplished by
placing multiple options in the Configure Request.
The Rejection of a MAC Type Announcement (in a Configure-Reject) is
essentially a statement that traffic appropriate to the MAC Type, if
encountered, will be forwarded on the link even though the receiving
system has indicated it will discard it.
Figure 7: MAC Type Selection Option
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| type=3 |length = 3 | MAC Type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 3 = MAC Type Selector
Length
3 Octets
MAC Type Selector
One of the values of the PDU's MAC Type Field that this system
is prepared to receive and service.
6.7. Tinygram Compression
Not all systems are prepared to make modifications to messages in
transit; on high speed lines, it is probably not worth the effort.
This option permits the system to negotiate compression.
Consistent with the behavior of other compression options in the
Internet Point-to-Point set of protocols, no negotiation implies no
compression. The systems need not agree on the setting of this
parameter; one may be willing to decompress and the other not. A
system which does not negotiate, or negotiates this option to be
Point-to-Point Protocol Extensions Working Group [Page 16]
Internet-Draft Bridging Point-to-Point Protocol July 1993
disabled, should never receive a compressed packet, however.
Figure 8: Tinygram Compression Option
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| type=4 |length = 3 | Compression |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 4 = Tinygram Compression Support Option
Length
3 Octets
Compression Enable/Disable
If the value is 1, Tinygram Compression is enabled. If the
value is 2, Tinygram Compression is disabled, and no
decompression will occur.
6.8. LAN Identification Support
Note: Implementors are advised that during the Proposed Standard
stage of RFC 1220 this option was not widely implemented.
Not all systems are prepared to make use of the LAN Identification
field. This option enables the systems to negotiate its use.
The parameter is advisory; if the value is "enabled", then there may
exist labeled LANs beyond the system, and the system is prepared to
service traffic to it. if the value is "disabled", then there are no
labeled LANs beyond the system, and all such traffic will by
definition be dropped. Therefore, a system which is advised that his
peer does not service LAN Identifications need not forward such
traffic on the link.
The default value is that LAN Identification disabled.
Figure 9: LAN Identification Option
0 1 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| type=5 |length = 3 | Identification|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 5 = LAN Identification Support Option
Point-to-Point Protocol Extensions Working Group [Page 17]
Internet-Draft Bridging Point-to-Point Protocol July 1993
Length
3 Octets
Identification Enable/Disable
If the value is 1, LAN Identification is enabled. If the value
is 2, LAN Identification is disabled.
6.9. MAC Address Specification
The "MAC Address Specification" option enables the system to
announce its MAC Address or have one assigned. The MAC Address
is, in this case, represented in IEEE 802.1 Canonical format,
which is to say that the multicast bit is the least significant
bit of the first octet of the address.
If the system wishes to announce its MAC Address, it sends the
option with its MAC Address specified. RFC 1220 systems will
REJECT this option, so systems should expect and ignore
option rejects. This option should under no circumstances be NAKed,
however, as it is purely informational.
If the system wishes to have a MAC Address assigned, it sends
the option with a MAC Address of 00-00-00-00-00-00. A system
receiving this option MUST either NAK or REJECT it; Systems
that have no mechanism for address assignment, including RFC
1220 systems, will REJECT it. A NAK, if presented, MUST
specify a valid IEEE 802.1 format physical address; the
Multicast Bit MUST therefore be zero. It is strongly
recommended (although not mandatory) that the "locally assigned
address" bit (the second least significant bit in the first
octet) be set to ONE indicating a dynamically assigned
address.
Figure 10: MAC Address Announcement or Assignment
0 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 6 | Length = 8 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|MAC byte 1 |L|M| MAC byte 2 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC byte 3 | MAC byte 4 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MAC byte 5 | MAC byte 6 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type 6 = MAC Address Announcement
Length
8 Octets
Point-to-Point Protocol Extensions Working Group [Page 18]
Internet-Draft Bridging Point-to-Point Protocol July 1993
MAC Address
6 bytes of MAC Address in 802.1 Canonical order
follow. For clarity, the position of the Local
Assignment (L) and Multicast (M) bits are shown in the
diagram.
7. Acknowledgements
This document is a product of the Point-to-Point Protocol Extensions
Working Group. Special thanks go to Steve Senum of Network Systems,
Dino Farinacci of 3COM, Rick Szmauz of Digital Equipment Corporation
and Andrew Fuqua of IBM.
8. Bibliography
[1] Simpson, W., "The Point-to-Point Protocol for the Transmission of
Multi-Protocol Datagrams Over Point-to-Point Links", RFC 1331,
May 1992.
[2] Media Access Control (MAC) Bridges, Institute of Electrical
and Electronics Engineers, July 1993. ISO/IEC 15802-3:1993
ANSI/IEEE Std 802.1D, 1993 edition.
9. Security Considerations
Security issues are not discussed in this memo.
10. Author's Addresses
Fred Baker
Advanced Computer Communications
720 Santa Barbara Street
Santa Barbara, CA 93101
Phone: (805) 963-9431
EMail: fbaker@ACC.COM
Rich Bowen
International Business Machines Corporation
P.O. Box 12195
Research Triangle Park, NC 27709
Phone: (919) 543-9851
EMail: rkb@ralvm11.vnet.ibm.com
Or send comments to: ietf-ppp@ucdavis.edu
Draft Expiration Date: January 15, 1994
Point-to-Point Protocol Extensions Working Group [Page 19]